Various types of electronic messaging systems are known in the art. They include single-medium systems such as e-mail systems and voice mail systems, as well as multimedia messaging systems, such as the Lucent Intuity.RTM. messaging system, that handle messages having any combination of voice, fax, text, data, and other media components.
It is not uncommon for a single user to have messaging accounts on a plurality of electronic messaging systems. This may be because all of the media in which the user wishes to send and/or receive messages are not compatible with a single messaging system, or because the user works in more than one location each served by a different messaging system, or because different messaging services are bundled with other services subscribed to by the user, such as Internet Service Provider accounts, school accounts, or accounts bundled with applications software or computer operating systems. But a user typically finds it inconvenient to have to access a plurality of messaging systems to get all of their messages. Such a user would typically find it advantageous to combine the contents of all mailboxes so that the user could get all of their messages through one mailbox, and to be able to do so even if the providers of the disparate messaging services are neither motivated enough nor coordinated enough to provide such a service.
A well-known technique for combining the contents of multiple mailboxes into a single view is client aggregation. This method is believed to be employed by many vendors including Qualcomm (in their Eudora e-mail client application) and Microsoft (in their Exchange and Outlook products, and in general by the Windows Messaging Architecture). This method is most beneficial when only the aggregation point is always used to view and access messages. This is because, when the messages are aggregated, they are generally removed from the source services, thereby eliminating the need to keep track of messages in more than one place. Client aggregation may aggregate to the client, as in the case of Eudora, or one may have an option to aggregate through the client back to a central server, as in the case of Exchange. In this lafter case, the client must be active for the aggregation to occur, and this is generally not a reliable assumption, especially when trying to achieve telephony levels of quality-of-service. Some aggregation methods include an option to "Leave Messages On Server", but this creates the need for a state database to determine which messages have already been retrieved and which ones are new the next time a client accesses the source service, thus leading to performance problems as noted above.
Synchronization is a process by which two or more different sets of data from one or more different applications are made semantically equivalent, i.e., they come to contain the same information even though they may represent that information differently. The ability to provide synchronization between mailboxes by using a messaging system's application program interface (API) has been demonstrated in U.S. Pat. No. 5,647,002. The arrangement disclosed in that patent is believed to be the most feature-complete method of mailbox-content synchronization between e-mail and voicemail to-date. However, it, too suffers from some drawbacks. First, because the arrangement relies on a separate piece of software periodically accessing each mailbox as though it were a client, it imposes some performance limitations on each system. Second, because each messaging vendor seeks to provide a "richer" user experience at the client interface than its competitors, the use of a "standard" client-side API is often not sufficient to provide full interoperability between disparate messaging systems. Third, synchronization is there achieved by continually comparing the current state with a previous state to identify state changes; this creates the need for an intermediate-states database, which may be costly to maintain. And finally, to avoid unnecessary administration of passwords in the synchronizer software, there may be development associated with adapting the e-mail server to support synchronizer access to the mailbox, and this requires participation from sometimes-unwilling competing messaging-system vendors.